Field of the Invention
The embodiments described herein are generally directed to the management of gateways, and, more particularly, to the management of control scripts and/or drivers on physical gateways via virtual gateways.
Description of the Related Art
The use of machine-to-machine (M2M) systems is and will continue to be a prevalent aspect of commerce and society. M2M systems are an integral part of the Internet of Things (IoT), and have a wide range of applications, including monitoring and control for industrial and building automation, smart facilities, smart grids, smart cities, healthcare, hospitality, food services, and the like.
In M2M and IoT ecosystems, communications between devices in a machine-to-machine system may be performed using a gateway device positioned between the devices. The gateway device may also provide additional services, such as the secure execution of applications, including control, monitoring, reporting, and alerting scripts, the configuration and activation/deactivation of one or more devices, device types, and/or device groups, and data capture and reporting for devices, device types, and/or device groups communicatively connected to the gateway device.
As a simple example, in the context of industrial automation, various devices within a physical facility may be communicatively connected to a gateway device for the facility. These devices may comprise sensors (e.g., temperature sensors, open/closed sensors, locked/unlocked sensors) and operable devices, such as doors, windows, locks, lights, gates, valves, etc. The gateway device may execute one or more control scripts which monitor one or more of the devices (e.g., by receiving temperature measurements from a temperature sensor, receiving the status of a door lock, etc.) and control one or more of the devices based on the monitoring of other devices and/or conditions (e.g., turning on a light if a gate is opened, unlocking or locking a door at a certain time, sounding an alarm if a temperature exceeds a certain threshold, etc.).
In distributed monitoring and control systems (e.g., over a large facility or over multiple geographically-dispersed facilities), multiple gateways may communicate with each other and/or a central platform over one or more networks (e.g., the Internet). In such situations, there may be numerous gateways (e.g., hundreds) that must be configured, installed, operated, and managed. This can make it difficult to ensure that each gateway and any associated scripts and devices, device types, and/or device groups have been properly configured, tested, implemented, updated, or backed up to ensure expected operation.
Thus, what are needed are technologies that enable more efficient management of gateways, including the definition of gateways, scripts, and devices, device types, and/or device groups, configuration, testing, implementation, update, and recovery within M2M, IoT, cloud-based, and/or distributed-server-based systems.